home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-07-26 | 11.9 KB | 110 lines | [TEXT/MMCC] |
- #ifndef __WINDOW_LAYER_H__
- #define __WINDOW_LAYER_H__
-
- #include "offscreen layer.h"
- #include "program globals.h"
- #if USE_DRAG
- #include <Drag.h>
- #endif
-
- enum WindowAttributes
- {
- kHasCloseBoxMask = 0x00000001,
- kHasZoomBoxMask = 0x00000002,
- kHasGrowBoxMask = 0x00000004,
- kHasModalBorderMask = 0x00000010,
- kHasThickDropShadowMask = 0x00000020,
- kHasDocumentTitlebarMask = 0x00001000,
- kHasPaletteTitlebarMask = 0x00002000,
- kHasRoundedTitlebarMask = 0x00004000,
-
- kWindowGadgetsMask = 0x0000000F,
- kWindowAdornmentsMask = 0x00000FF0,
- kWindowTitlebarMask = 0x000FF000
- };
-
- typedef unsigned long WindowAttributes;
-
- enum
- {
- kActivateWindow = TRUE,
- kDeactivateWindow = FALSE
- };
-
- enum
- {
- kAlwaysOpenNew = TRUE,
- kOpenOldIfPossible = FALSE
- };
-
- #if PRAGMA_ALIGN_SUPPORTED
- #pragma options align=mac68k
- #endif
- struct ExtendedWindowStruct
- {
- WindowRecord theWindow; /* original window record */
- unsigned long magic; /* magic number to see if window is ours */
- WindowAttributes attrs; /* attributes for window, see above enums */
- short windowIndex; /* index of window in program's window list */
- short windowWidth; /* width of window content, in pixels */
- short windowHeight; /* height of window content, in pixels */
- short windowDepth; /* current pixel depth of window */
- short maxDepth; /* maximum pixel depth of window */
- Boolean active; /* window is active */
- Boolean autoCenter; /* auto center window in main screen when opened */
- Boolean isFloat; /* is floating window? */
- Boolean modified; /* data in window has been modified since save? */
- Boolean drawGrowIconLines; /* draw lines when drawing grow icon */
- #if USE_PRINTING
- Boolean isPrintable; /* window can print */
- #else
- Boolean printFiller;
- #endif
- #if USE_DRAG
- Boolean draggable; /* window supports drag manager */
- #else
- Boolean dragFiller;
- #endif
- Boolean wasVisible; /* window was visible before suspending */
- Point initialTopLeft; /* initial window bounds when oat,
- Boolean isDummy);
- extern void MyDisposeWindow(WindowRef windowReference);
- extern Boolean MySelectWindow(WindowRef windowToSelect);
- extern void MyShowWindow(WindowRef windowToShow);
- extern void MyHideWindow(WindowRef windowToHide);
- extern void MyDragWindow(WindowRef windowToDrag, Point startPoint, const Rect *draggingBounds);
- extern void MyMoveWindow(WindowRef theWindow, short h, short v, Boolean selectNow);
- extern void MyGrowWindow(WindowRef theWindow, Point theGlobalPoint);
- extern void MySizeWindow(WindowRef theWindow, short width, short height, Boolean updateNow);
- extern void MyZoomWindow(WindowRef theWindow, short windowCode);
- extern Boolean MySendBehind(WindowRef window, WindowRef behind);
- extern WindowRef GetFrontDocumentWindow(void);
- extern WindowRef GetLastFloatingWindow(void);
- extern Boolean WindowIsModalQQ(WindowRef windowReference);
- extern void DeactivateFloatersAndFirstDocumentWindow(void);
- extern void ActivateFloatersAndFirstDocumentWindow(void);
- extern void HideOneFloatingWindow(WindowRef floatingWindow);
- extern void ShowOneFloatingWindow(WindowRef floatingWindow);
- extern void SuspendFloatingWindows(void);
- extern void ResumeFloatingWindows(void);
- extern void ValidateWindowList(void);
- extern void GetWindowPortRect(WindowRef windowReference, Rect *portRect);
- extern Boolean WindowHasLayer(WindowRef theWindow);
- extern Boolean WindowIsFloat(WindowRef theWindow);
- extern WindowRef GetIndWindowRef(short index);
- extern OSErr OpenTheIndWindow(short index, Boolean newStatus);
- extern OSErr UpdateTheWindow(WindowRef theWindow);
- extern Boolean CloseTheWindow(WindowRef theWindow);
- extern void CloseAllDocumentWindows(void);
- extern void GetMainScreenBounds(Rect *screenRect);
- extern short GetBiggestDeviceDepth(WindowRef theWindow);
- extern short GetWindowRealDepth(WindowRef theWindow);
- extern Boolean GetWindowReallyIsColor(WindowRef theWindow);
- extern void ArrangeWindows(void);
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif
-